package com.xinghai.system.domain;

import com.baomidou.mybatisplus.annotation.TableField;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.xinghai.common.annotation.Excel;
import com.xinghai.common.core.domain.BaseEntity;

import java.util.ArrayList;
import java.util.List;

import static com.xinghai.common.annotation.Excel.ColumnType.IMAGE;

/**
 * 车辆信息对象 xh_car_info
 * 
 * @author smy
 * @date 2024-07-21
 */
public class XhCarInfo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** id */

    private Long id;

    /** 部门ID */
    private Long deptId;

    /** 品牌 */
    @Excel(name = "品牌")
    private String carBrand;

    /** 车型; */
    @Excel(name = "车型")
    private String carType;

    /** 车牌号 */
    @Excel(name = "车牌号")
    private String carNo;

    /** 行驶证号 */
    @Excel(name = "行驶证号")
    private String carLicenseNo;

    /** 行驶证照片缩略图 */
    private String carLicenseMinUrl;

    /** 行驶证照片 */
    @Excel(name = "行驶证照片",cellType = IMAGE,type = Excel.Type.EXPORT)
    private String carLicenseImgUrl;

    /** 状态;状态（0正常 1停用） */
    @Excel(name = "状态", readConverterExp = "0=正常,1=停用",type = Excel.Type.EXPORT)
    private String status;

    /** 司机id；字符串逗号分隔 */
    private String driverId;

    /** 删除标识;删除标志（0代表存在 1代表删除） */
    private String delFlag;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setDeptId(Long deptId) 
    {
        this.deptId = deptId;
    }

    public Long getDeptId() 
    {
        return deptId;
    }
    public void setCarBrand(String carBrand) 
    {
        this.carBrand = carBrand;
    }

    public String getCarBrand() 
    {
        return carBrand;
    }
    public void setCarType(String carType) 
    {
        this.carType = carType;
    }

    public String getCarType() 
    {
        return carType;
    }
    public void setCarNo(String carNo) 
    {
        this.carNo = carNo;
    }

    public String getCarNo() 
    {
        return carNo;
    }
    public void setCarLicenseNo(String carLicenseNo) 
    {
        this.carLicenseNo = carLicenseNo;
    }

    public String getCarLicenseNo() 
    {
        return carLicenseNo;
    }
    public void setCarLicenseMinUrl(String carLicenseMinUrl) 
    {
        this.carLicenseMinUrl = carLicenseMinUrl;
    }

    public String getCarLicenseMinUrl() 
    {
        return carLicenseMinUrl;
    }
    public void setCarLicenseImgUrl(String carLicenseImgUrl) 
    {
        this.carLicenseImgUrl = carLicenseImgUrl;
    }

    public String getCarLicenseImgUrl() 
    {
        return carLicenseImgUrl;
    }
    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }
    public void setDelFlag(String delFlag) 
    {
        this.delFlag = delFlag;
    }

    public String getDelFlag() 
    {
        return delFlag;
    }

    public String getDriverId() {
        return driverId;
    }

    public void setDriverId(String driverId) {
        this.driverId = driverId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("deptId", getDeptId())
            .append("carBrand", getCarBrand())
            .append("carType", getCarType())
            .append("carNo", getCarNo())
            .append("carLicenseNo", getCarLicenseNo())
            .append("carLicenseMinUrl", getCarLicenseMinUrl())
            .append("carLicenseImgUrl", getCarLicenseImgUrl())
            .append("status", getStatus())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("delFlag", getDelFlag())
            .append("driverId",getDriverId())
            .toString();
    }

    /** ============================= 查询用 =============================  */

    /** 物流公司id数组，查询用 */
    @TableField(exist = false)
    private List<Long> deptIdList = new ArrayList<>();

    public List<Long> getDeptIdList() {
        return deptIdList;
    }

    public void setDeptIdList(List<Long> deptIdList) {
        this.deptIdList = deptIdList;
    }
}
